package cn.tedu.tnt_sky.mapper.admin;

import cn.tedu.tnt_sky.pojo.dto.AdminUserPageDTO;
import cn.tedu.tnt_sky.pojo.dto.AdminPutDTO;
import cn.tedu.tnt_sky.pojo.dto.AdminUploadDTO;
import cn.tedu.tnt_sky.pojo.entity.Admin;
import cn.tedu.tnt_sky.pojo.vo.AdminUserVO;
import cn.tedu.tnt_sky.pojo.vo.AdminVO;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface AdminMapper {

    /**
     * 根据用户名查询管理员
     * @param username
     * @return
     */
    Admin selectByUsername(String username);

    /**
     * 根据用户名修改个人信息
     * @param adminUpdateDTO
     */
    void updateSetting(AdminPutDTO adminUpdateDTO);

    void uploadById(AdminUploadDTO adminUploadDTO);

    /**
     * 根据ID查询管理员数据
     * @param id
     * @return
     */
    AdminVO refresh(long id);

    /**
     * 用户页面分页查询
     * @param adminPageDTO
     * @return
     */
    Page<AdminUserVO> pageQuery(AdminUserPageDTO adminPageDTO);

}
